1. Field of the Invention
The present invention relates generally to the field of client-server computing devices. More specifically, the present invention relates to a system and method for providing fault-tolerant remote controlled computing devices.
2. Description of Related Background Art
Conventionally, remote computing devices are prone to faults, errors which may occur in the software which executes on the devices. When these devices fail, or enter a fault state, the users are left with a very undesirable interface with the computing device. Where a computing device may have been designed and functioned to provide multi-media presentation and allow user interaction, when the device enters a fault state, or error condition, the device become inoperable. In certain circumstances, the device may be an eye sore rather than an attractive billboard, kiosk, or marketing device.
The present invention is a client-server application working across the web or a private (Transmission Control Protocol/Internet Protocol) TCP/IP network. This client application uses a complied propriety client code base which utilizes a web browser as a display mechanism on the client side and a web server on the server end. The purpose of the invention is to monitor and manage a computer device and its visual and auditory content on a TCP/IP network securely from a server on a public or private network. The invention allows monitoring and management of the client device by an interchange of data and configuration files on a periodic basis. Device system health and usage can be pushed to the server and data and content can pulled from the server for use on the client device. The system is composed of a variety of components that all use common (Hyper-Text Transfer Protocol) HTTP and (Secure Hyper-Text Transfer Protocol) HTTPS protocols as the transport mechanism. The carrier network can be encrypted with SSL for privacy and security reasons. The file format for data exchange is (eXtensible Markup Language) XML making it highly portable and re-usable by customers for off-line analysis if needed. Binary data is transported in its native format.
Representative features may include;
The system may provide 100% centralized management and configuration of an unlimited number of devices from a typical web browser                The system can work reliably across a variety of TCP/IP connections of questionable stability        The system can manage delivery and display of large content files across slow networks without interrupting the playing of the media        The system provides inherent remote monitoring (uptime monitoring) and remote control (application restarts and rebooting of systems) of the software installed at the device.        The system provides near real-time statistical reporting on the playing of multimedia files and interaction with the interactive portions of the application.        The system provides centralized remote control of URL's that can be accessed to provide content filtering for the interactive on a per client basis        The system provides real-time error logging to a central server for troubleshooting        The system provides high-availability of the application software at the client via sophisticated self-healing mechanisms        The system inherently scales well cause of the batch-mode nature of client and server interaction        The system is built on standard protocols (HTTP, SSL, XML). Thus, the system is extensible and adaptable to new technologies and data types        
Accordingly, what is needed is a system and method that overcomes the problems and disadvantages of the prior art. In particular, the system and method should provide mechanisms to ensure the remote computing device provides nearly one-hundred percent reliability. Alternatively, if the software enters a fault state the remote computing device should provide a graceful default response such that the device does not create negative impressions in the minds of users and passers by. The system and method should provide reliable operation even when connections to a server system use un-reliable, un-secure, and low bandwidth connections over the public Internet. Additionally, the system and method should allow a user to define custom event for which the user is notified if the event is satisfied. Generally, these event may include errors encountered by the remote computing device.